#include <stdio.h>

int main(void)
{
    struct A
    {
        char a;
        char c;
        int b;
    } a = {'x', 'o', 520};

    printf("size of a = %ld\n", sizeof(a));
    //内存对齐, abc顺序时, 'a'与'c'的内存将会与'b'一起对齐为4字节
    //比如地址空间:
    //a[*|||] b[****] c[*|||], 这样不连续的占用,
    //会使间隔的ac剩下3地址空间被填满,实际占用12字节
    //
    //如果acb排序:
    //a[*|||] c[*|||] b[****],
    //这样会将ac实际地址空间排一起, 调整后:
    //ac[**||] b[****], 实际占用8字节
    return 0;
}
